Google Geocoding APIとElevation APIを利用して住所から位置情報を経度?経度?標高で取得する
library(rjson)
library(RCurl)
## Loading required package: bitops
# 住所をGeocoding APIのURLに変換
address <- "広島県広島市南区宇品東1-1-71"
address <- curlEscape(iconv(address, to = "UTF-8"))
url <- paste("http://maps.googleapis.com/maps/api/geocode/json?address=", address,
"&sensor=false®ion=JP&language=ja", sep = "")
# Geocoding APIからJSON情報取得
json <- getURL(url)
# JSONからRに緯度?経度の情報を抽出
rjson <- fromJSON(json)
latitude <- rjson$results[[1]]$geometry$location$lat
longitude <- rjson$results[[1]]$geometry$location$lng
c(latitude, longitude)
## [1] 34.37 132.47
# 緯度?経度をElevation APIのURLに変換
location <- paste(latitude, longitude, sep = ",")
url <- paste("http://maps.googleapis.com/maps/api/elevation/json?locations=",
location, "&sensor=false", sep = "")
# Elevation APIからJSON情報取得
json <- getURL(url)
# JSONからRに標高(m)の情報を抽出
rjson <- fromJSON(json)
elevation <- rjson$results[[1]]$elevation
elevation
## [1] 2.77